package com.shiguiwu.springmybatis.spring.autowired.resource;

import org.springframework.context.annotation.AnnotationConfigApplicationContext;

/**
 * @description: Resource
 * 用在方法上的时候，方法参数只能有一个。
 * 先按Resource的name值作为bean名称找->按名称（字段名称、方法名称、set属性名称）找->按类型找->通过限定符@Qualifier过滤->@Primary->@Priority->根据名称找（字段名称或者方法参数名称）
 * 源码 CommonAnnotationBeanPostProcessor
 * 用法和@Autowired一样
 * @author: stone
 * @date: Created by 2021/3/15 15:11
 * @version: 1.0.0
 * @pakeage: com.shiguiwu.springmybatis.spring.autowired
 */
public class ResourceTests {
    public static void main(String[] args) {
        AnnotationConfigApplicationContext applicationContext = new AnnotationConfigApplicationContext(RConfig.class);
        String[] beanDefinitionNames = applicationContext.getBeanDefinitionNames();
        for (String beanDefinitionName : beanDefinitionNames) {
            System.out.println(applicationContext.getBean(beanDefinitionName));

        }
    }
}
